home *** CD-ROM | disk | FTP | other *** search
Text File | 1988-12-07 | 107.7 KB | 2,089 lines |
-
- U S E R ' S G U I D E for S E U R A T
- Copyright 1988, by S. K. Webb, SKWare One, Inc.
-
- WHAT YOU NEED TO RUN SEURAT
-
- SEURAT requires the SEURAT.DAT file to run. It must be in the root
- directory of whatever disk it is on. The program disk may also contain
- whatever folders you wish, but folders may be placed on the data disk
- containing your images, or on a disk of their own. The first thing
- SEURAT does when it is loaded is to load in data from the SEURAT.DAT
- file. After this is accomplished and the main menu is displayed, the
- data file will not be needed again until the next time you load SEURAT.
- The disk may then be changed for a data disk for images.
-
- The other thing you need to do is to read this manual at least
- once, however cursorily, before attempting to use SEURAT. Please...
-
- MAIN MENU
-
- After data-loading is complete, SEURAT presents the user with the
- main menu from which all functions of the program are accessible. The
- currently selected image, or paint screen, is displayed by clicking the
- right mouse button or by pressing Escape. You may return to the main
- menu from the paint screen by the same means: clicking the right mouse
- button or by pressing the Escape (with certain exceptions noted below).
-
- In low resolution, the main menu displays fill the screen. In
- medium and high resolutions, these same buttons and options leave a
- considerable portion of the center of the menu screen available for a
- view window, configured much like the zoom screen view window, through
- which the currently active paint screen can be seen.
-
- Forty-six fill patterns are displayed around the border of the main
- menu. The currently active fill pattern is shown in the active fill
- selection display, which is located at the central left-hand edge of
- the screen.
-
- Immediately to the right of this active fill selection display is a
- stack of four buttons: COLOR and MONO, which toggle the peripheral
- display of 46 fill patterns between the two fill types, the TEXT button
- and a button that calls a pop-out menu, which will appear over the
- brush selector boxes.
-
- Below the active fill display are the buttons for setting the WRITE
- MODE, and above it the buttons for selecting a paint function or
- operation.
-
- To the right of this block of buttons is a vertical column of
- buttons labeled A through H. These are the paint screen selector boxes.
-
- In the upper right-hand portion of the main menu is the palette
- display. The colors are arranged from the screen background color
- (color 0) at the upper-left to the writing color (color 15, or 3, or 1,
- depending on the resolution) at the lower-right.
-
- Just below the currently active palette is the FRE memory line, a
- continuously updated register showing the program's available free
- memory in decimal numbers.
-
- Below the FRE ledger line are three buttons controlling the INK,
- CLIP and AUTO functions. Beneath them, in the lower right-hand area of
- the main menu are the brush selector boxes.
-
- The current selection of functions and operations are shown by
- highlighting the buttons in the usual GEM manner. There should always
- be one paint function (or text) button, one currently selected write
- mode, one active brush selection, one active paint screen selection,
- and one fill type selection highlighted at all times.
-
- The actual relative placement of the buttons and features of the
- main menu varies somewhat with the resolution in which the program is
- running. The low resolution screen is quite full, the medium less
- crowded, and the high resolution menu screen is rather sparsely
- settled.
-
- A detailed description of all features follows:
-
- VIEW WINDOW: The view window displays a 5:4 upright rectangle which
- reveals 25.1% of the paint screen. The view window can be scrolled up,
- down, left and right one pixel at a time by clicking on the directional
- arrows in the corner boxes of the view window border. (Note: The arrows
- refer to the direction of movement of the window, not the movement of
- image in the window.)
-
- The view window can also be shifted much more rapidly by dragging
- with the left mouse key on the vertical or horizontal sliders seen in
- the upper and left-hand portions of the view window's border. (Note:
- the sliders alone are not able to reach the last few pixels at the edge
- of the paint screen, but the arrows can shift the image to the very
- edge. In general, some "fine tuning" by the arrows is necessary for
- precision positioning.)
-
- The X and Y coordinates of the upper-left-hand corner of the
- screen area which is currently displayed in the view window are shown
- in the lower border of the view window.
-
- CURSORS: SEURAT's cursor shapes are configured to provide the user
- with status information. The cursor configuration alters according to
- the routine in which the user is operating: the file cursor in file
- functions, the grid cursor in the grid color changing routine, the
- palette cursor in palette mode, etc. Specific cursor shapes are
- described in each appropriate section below.
-
- Additionally, there is a cursor that is "normal" in form but that
- contains the currently selected color.
-
- WRITE MODE: There are four write modes available for graphic
- operations on the ST. All user graphic operations except block placements
- are carried out in the user's currently selected write mode.
-
- The four modes are:
-
- 1) OVERWRITE (which GEM calls replace), in which all new pixels
- replace any existing pixels that might be present at that screen
- location.
-
- 2) TRANSPARENT, in which all new pixels of color 1 or higher
- replace existing pixels, but new pixels of the screen background color
- (color 0) are treated as "transparent," allowing existing old pixels to
- "show through;" that is, they are not replaced.
-
- 3) XOR (Exclusive Or), in which the new pixel is xor'ed with the
- existing pixel. The rule of the xor is: one or the other but not both.
- Or, 1 xor 1 = 0, 1 xor 0 =1, 0 xor 1 = 1, and 0 xor 0 = 0 (at least in
- monochrome; the results are less predictable in color).
-
- (Note: xor behaves differently in block placements than in the
- other graphic operations, because of the distinction made between 0
- pixels that have been set to 0 and 0 pixels that have not been set; see
- below.) The chief usefulness of xor lies in the fact that a bit pattern
- xor'ed to the same place twice restores the original pattern of pixels
- present before the two operations.
-
- 4) REVERSE TRANSPARENT, in which new set pixels which overlap old
- set pixels are unset (color 0) and unset pixels are transparent with
- regard to old set pixels. It is the "reverse" of the transparent mode.
-
- If the write modes sound confusing to the user, don't be too
- discouraged, because they are both confusing and confused! Complicating
- the picture is the that that GEM distinguishes between set and unset
- pixels. That's no problem, unless you're talking about pixels of the
- screen background color (color 0). Oddly enough, the distinction
- between set and unset color 0 pixels is only observed in operations on
- blocks, where unset pixels are ignored, while in all other operations,
- all pixels of color 0, set and unset alike, are affected. I cannot say
- whether this is a pecularity of GFA BASIC or GEM itself.
-
- From a practical standpoint, the thing to do is play around with
- the effect of each write mode on the operations you perform, as it is
- often difficult to predict what the result will be. Experiment with the
- many combinations, as some startling effects are possible.
-
- The write mode may be set on the main menu by clicking on one of
- the four write mode selector buttons. Write mode may also be set or
- altered any number of times during a graphic operation (that is, while
- the paint screen is displayed) by pressing the 1, 2, 3 or 4 keys on the
- keyboard. (Keypresses are valid only while the paint screen is "up,"
- not from the main menu. Please note the single exception: the write
- mode cannot be changed by keypress while you are entering text, since
- keypresses in the text routine are routed to the text string, except
- for Escape and Backspace.)
-
- Selecting the TEXT operation or choosing BLOCK as the paint
- operation automatically toggles the write mode to transparent, the most
- usual choice for those operations. However, the write mode may be
- reset at any time. The write mode is not toggled back when another
- option besides block or text is selected; it must be reset by the user.
-
- BLOCK: The block function allows the user to "get" a piece of the
- paint screen and place it somewhere else on that paint screen or on
- another paint screen. When you first toggle on the block function and
- go to the paint screen, the mouse will be replaced by a full screen
- cross-hair cursor.
-
- Placing the cursor center (where the two lines cross) and pressing
- and holding the left mouse button will mark the upper-left-hand corner
- of the block you are selecting. Still holding the left mouse button
- down, drag the mouse down and away (to the right) to where you want the
- lower-right-hand corner of the block to be. A box will be dragged
- around the block as you do so.
-
- When you release the left mouse button, a copy of that portion of
- the paint screen will be "cut out" as a block. In low and medium
- resolutions, the mouse will briefly reappear as the "busy bee" while
- the program unleaves the bit planes of the image and combines them to
- construct a monoplane mask of the block. In high resolution this
- operation is unnecessary (since the image is already monoplane), so
- there is virtually no delay. The time delay varies inversely with the
- size of the block and the number of bit planes to be combined, but the
- slight delay is hardly noticeable until you "pull" a block larger than
- a quarter-screen or so.
-
- When masking is complete, a free-floating copy of the block
- appears, attached at its center to the cursor point. This free-floater
- is shown in the transparent mode, for a maximally unobstructed view of
- the rest of the paint screen, regardless of which write mode is
- currently selected.
-
- In monochrome, the transparent "floater" can become entirely
- invisible, particularly when it is on a large area of not-the-screen-
- background color. To avoid this problem, press the Help key. This will
- toggle the floater into being displayed in the overwrite mode (regardless
- of which write mode is selected; the selected write mode remains active),
- thus making it visible everywhere on the screen. Another press of the
- Help key will toggle the floater back to transparent display, and so
- forth. The Help key works (and is necessary) this way only in high
- resolution when block is the paint function, as it key has another
- function in all other operations.
-
- Once you have the block as a floater, you may place it wherever you
- wish. The block can be moved off the edge of the paint screen (as far
- as its midpoint) in any direction. A single click of the left mouse
- button will affix a copy of the block (or that portion on the screen)
- at its current location. The block will printed to the paint screen in
- whatever write mode you have selected.
-
- As mentioned earlier, the four write modes available generally
- throughout SEURAT for graphic operations are not implemented in the
- same manner for block placement. Overwrite and transparent function in
- the same manner as for graphic operations, but the xor mode affects
- only set pixels and is not executed on unset pixels.
-
- Because a true reverse transparent write mode would be of limited
- usefulness for block placement, SEURAT substitutes inverse transparent
- as the fourth write mode for blocks. In the inverse transparent mode,
- he block is printed to the screen transparently (with pixels of color 0
- "transparent" to the background) but with the set pixels printed in
- inverse (If color>0 Then NOT Color).
-
- Additionally, if you press the 4 key in a for the inverse transparent
- mode and then hold down the Alternate key while placing the block with a
- left mouse click, the block will be printed to the paint screen in the
- not transparent mode (the block is "transparent" to the background, but
- the background that "shows through" is printed in inverse (not color) as
- well as the set pixels of the block).
-
- These two new write modes more than make up for the absence of the
- not-terribly-useful (for blocks) reverse transparent mode. A wide range
- of graphically intriguing effects are possible with the inverse
- transparent and not transparent modes. Experiment with them!
-
- Additionally, it is often very useful to have user access to the
- block mask alone, without the accompanying block. For example, in the
- case when the block has a number of transparent "holes" which are
- supposed to be dark shadows in the image, but through which a bright
- distracting background shows. Holding down the Control key while
- placing a block will result in the block mask alone being printed to
- the screen in whichever write mode is currently selected (in write mode
- 4, an inverse mask is printed). Thus, one can "paste" a copy of the
- mask to an empty paint screen (with the same palette), fill in the
- "holes" quickly with a brush, fill the mask with a dark color, "pull"
- the mask as a block itself, use it to black out the background in the
- position where the desired block is to be placed, go "pull" the desired
- block, and align it over the black-out mask to produce a shadow.
-
- Those familiar with the ST will know that placement of screen
- portions is implemented by means of sixteen "primitive" graphic modes,
- in which two screen areas are combined according to variety of logical
- operations. These 16 modes can be selected for block operations by
- pressing the keys A through P (either upper or lower case permitted).
-
- Again, holding down the Control key while clicking with the left
- mouse button will result in the block mask, rather than the block,
- being placed in whichever of the sixteen modes you have selected.
-
- This A-through-P key press is a one-time only operational mode;
- only the next block placement after such a key press is performed in
- one of the sixteen logical modes. These logical modes are as follows:
-
- A (0) - DELETE DESTINATION AREA
- B (1) - NEW AND OLD
- C (2) - NEW AND (NOT OLD)
- D (3) - NEW {OVERWRITE}
- E (4) - (NOT NEW) AND OLD {IMP}
- F (5) - OLD {DO NOTHING}
- G (6) - NEW XOR OLD
- H (7) - NEW OR OLD
- I (8) - NOT (NEW OR OLD) {NOR}
- J (9) - NOT (NEW XOR OLD) {EQV}
- K (10) - NOT OLD {INVERSE}
- L (11) - NEW OR (NOT OLD)
- M (12) - NOT NEW {INVERSE OVERWRITE}
- N (13) - (NOT NEW) OR OLD
- O (14) - NOT (NEW AND OLD) {NAND}
- P (15) - SOLID COLOR 1 FILL DESTINATION AREA
-
- Further copies of the block can be placed elsewhere. If you return
- to the main menu and switch paint screens, when you enter the new paint
- screen, the block will follow (as long as you are still in the block
- function), and copies may be placed there or in any paint screen.
-
- Pressing the Escape key indicates that you wish to select another
- block. The full-screen cross-hair cursor will reappear and the process
- may be repeated. The selection of a new block may take place in any
- paint screen, but you must have selected the block function to do so.
-
- Blocks, once placed, can be removed from the paint screen by
- pressing Undo. Repeated keypresses of the Undo key will progressively
- remove blocks in the inverse order of their placement. Block Undo
- utilizes its own stack memory for block erasure. In order to conserve
- free memory, the block undo stack can be cleared after a succesion of
- operations by pressing Backspace. This must be done while block is the
- active paint function and while the paint screen is up, rather than the
- main menu is showing). For a complete description of how the block undo
- works, read the section on ERASE AND UPDATE carefully (below).
-
- Blocks may be manipulated in a variety of ways. They may be
- rotated, resized, and mapped to skew lines, arcs, distorted (in one
- dimension) in a freeform fashion, distorted trapezoidially in one
- dimension or the other, or in both dimensions at once. The complete
- description of block manipulations is to be found in the section on the
- BLOCK MENU (below).
-
- To return to the main menu, press the right mouse button (not
- Escape, which would select a new block!).
-
- FILL: Place the cursor at any point on the paint screen and press the
- left mouse button down firmly. Beginning at that point and proceeding in
- all directions from it, portions of the paint screen having the same
- color value as the selected point and continuously connected to it will
- be printed in the currently active fill pattern.
-
- Fill can easily leak into an area through diagonal gaps or staggers
- in a drawn figure, flooding it with fill. Immediately before executing
- a fill is a good time to update the paint screen with the Insert key,
- so that a faulty fill or series of fills can be undone. Consult the
- section on ERASE AND UPDATE for the operation of Insert-Undo.
-
- A right mouse click or pressing Escape returns you to the main
- menu.
-
- FILL SELECTION: A fill pattern may be selected by clicking on the
- appropriate box from the 46 fill display boxes around the circumference
- of the main menu. Only one fill type is shown at a time (COLOR or
- MONO). The user may change the fill type by a left mouse click on the
- COLOR or MONO buttons, which will trigger a redraw of the fill patterns
- to that fill type.
-
- The status of the INK option also effects the selection of fill
- pattern, by toggling the fill selection to MONO solid fill (number 7).
- See the explanation of INK given below. (Note: fills referred to by
- number in this manual are numbered from the upper-left-hand corner,
- proceeding clockwise around the main menu. The numbers used are 0 to
- 45.)
-
- The first 36 mono fills are those supplied by GEM. The remaining
- mono fills and all the color fills are built into SEURAT. All 92 fills
- are also included in the fill disk files, so that any fills replaced
- during the course of program operation can be reloaded if needed. The
- first color fills are "toners," i.e., half-tone patterns of Colors 1
- through the color just below the writing color mixed with the writing
- color itself. A separate set of color fills are supplied by SEURAT for
- operations in medium resolution; the medium resolution toners are
- combinations of all four colors with each other.
-
- Fills, whether in filled figures or used as area fills, are printed
- to the screen in the currently selected write mode, hence it is
- possible to fill one fill pattern with another fill pattern, to
- "overlay" an image with a "transparent" fill. Monoplane fills in a
- variety of colors can be combined with each other. Color fills as well
- as monoplane fills are printed in the currently selected write mode,
- thus a color fill which contains a background of the screen background
- color may be utilized in transparent mode.
-
- Again, as the effect of different write modes on fill patterns is
- far from predictable, I suggest you experiment with a variety of
- combinations of effects.
-
- A left mouse double-click on the COLOR or MONO buttons calls up the
- appropriate color or mono fill editor, which allows fill patterns to be
- created, erased, modified, shifted, inverted, flipped, and SAVEd to and
- LOADed from disk.
-
- For a complete description, see the section on the FILL EDITOR
- (below).
-
- FILL EDITOR: Double-clicking on either the COLOR or the MONO fill
- type selector button calls up the appropriate fill editor. It consists
- of a) a 16x16 enlarged pixel input screen, b) seven function buttons,
- c) an actual-size fill display and d) a color selector.
-
- When the fill editor is called, it loads the currently selected
- fill pattern into the input screen, where the user can modify it. A
- left mouse click on one of the color selectors lets the user draw on
- the input screen in that color with the left mouse button. The mouse
- changes color to show the color selected. The right mouse button will
- erase an enlarged pixel on the input screen by converting it to the
- screen background color.
-
- The altered fill pattern is displayed in its actual size and in
- sufficient multiples for the user to gauge its appearance in a fill
- display box to the lower-right of the input screen. The fill display is
- updated as the fill pattern is altered. The color selector boxes are
- arranged from the screen background color at the top to the writing color
- at the bottom.
-
- Color fill patterns are palette dependent; that is, they change
- with every change in the palette that involves the colors of which they
- are composed. Thus, color fills may have to be edited for their best
- appearance in any image with a different palette than the default
- palette. SEURAT speeds the process of reassigning colors with the AUTO
- COLOR CHANGE feature.
-
- Double-clicking on one of the color selectors causes every pixel in
- the fill pattern which is the selected color (the color of the cursor)
- to be redrawn in the color the user double-clicked on. These changes
- are made both on the input screen and in the actual size fill display.
- Note that the cursor color has not been changed. Remember: that's
- single-click on the color to be changed, and double-click on the color
- to change it to.
-
- Fill patterns may be geometrically manipulated. Clicking on the
- INVERT button causes the fill pattern to be inverted, that is, turned
- upside down. Clicking on the FLIP button reverses the fill pattern from
- left-to-right. Additionally, the four cursor keys will shift the fill
- pattern one pixel in their direction. The ERASE button will clear the
- fill pattern.
-
- Fill patterns are SAVEd to disk as a 16-word-per-bit-plane string.
- Hence, mono-plane fills (file extension .FIL) take 32 bytes, medium
- resolution two-plane fills (file extention .FL2) take 64 bytes, and low
- resolution four-plane fills (file extension .FL1) are 128 bytes in
- length.
-
- Fill patterns may also be SAVEd to or LOADed from disk. (For numerous
- small files such as these, folders are practically a neccessity; however,
- SEURAT does not require them.)
-
- Once a fill pattern has been modified or created, clicking on OK
- will cause the new fill to become the active fill pattern. It replaces
- the fill pattern that was selected when the user entered the fill
- editor.
-
- CANCEL aborts all changes made and restores the fill to that fill
- pattern which was selected before entering the fill editor.
-
- The fill editor functions identically in MONO and COLOR fill types,
- except, of course, that in MONO only the screen background color and
- the writing color are active.
-
- BRUSH: The "brush" is a geometric pattern of pixels which can be
- painted to the screen. In the lower right-hand corner of the main menu
- is an array of brush selector boxes. The default brush is the minimum
- brush: a single pixel. This option might be called "Pencil" or "Draw"
- in another program.
-
- When the brush function is active, the paint screen cursor is a
- "register mark," or an open cross-hair, which can be seen on any color
- background. The brush shape itself is not shown. In the default brush
- (one pixel), the brush's register-mark cursor allows for very fine and
- accurate placement of single pixels in precise position with reference
- to nearby pixels.
-
- The selected brush pattern paints in the currently active fill
- pattern unless the INK option is active, in which case it paints in the
- currently selected solid color. The brush function is the only
- color-dependent function which does not indicate the selected color by
- its cursor color, so you will have to toggle on the palette display if
- you want to check the color selection. (Press Help while on a paint
- screen.)
-
- There are 36 brushes shown in the brush selector boxes. A brush
- pattern is selected by a left mouse click on the appropriate box. The
- active brush pattern is highlighted. Clicking on a brush selector box
- will switch the paint function into brush. The selected brush remains
- highlighted at all times, even when brush is not the paint function.
-
- The user will note that the bottom row of boxes in the array of
- brush patterns are empty. These six boxes are reserved for user-defined
- brushes. When you first click on an empty user-defined brush box, a
- brush pattern editor will be called up with which you can define a
- brush. (See section on BRUSH EDITOR below.)
-
- User-defined brushes can utilize any or all the colors of the
- active palette in a single brush pattern, that is, these brushes can be
- multi-color brushes. User-defined brushes are painted to the screen in
- the currently selected fill pattern unless the INK function is active,
- in which case they are painted to the screen in the colors in which
- they were originally defined. (They may also be painted in solid
- colors, but the user must select MONO fill number 7 manually, without
- engaging the INK option.)
-
- (Note: In low and medium resolution, the multi-colored user-defined
- brush is not highlighted or printed in inverse to show that it has been
- selected, as this would distort the colors. Instead, the brush selector
- box's border is set to the selector color, that is, the color used for
- pop-out menu frame cursors and around the borders of selected buttons.)
-
- I must caution you that user-defined brushes are unhappily slow
- when used as brush shapes alone, that is, when the Ink function is off.
- However, with Ink on (in the multi-color mode), they are the fastest of
- all the brushes. The brushes in SEURAT do not have their positional
- changes buffered. This means that if you move the mouse too rapidly,
- the brush (like a real paint brush) will "skip" or fail to print at
- aboslutely every intervening position between the beginning and end of
- a very, very rapid mouse movement.
-
- Any selected block of any size may also be used as a brush. A
- double-click of the left mouse button on the BLOCK button with BRUSH as
- the active function will select the currently defined block as the
- selected brush pattern. If no block is currently defined, an alert will
- advise the user. When block is selected as the brush pattern the BLOCK
- button will have a cross-hatched background and no brush pattern in the
- brush selector boxes will be highlighted. The block-as-brush option can
- be deselected by another double-click on the BLOCK button. The last
- selected brush pattern in the brush selector boxes will be highlighted.
-
- A right mouse click or press of Escape returns you to the main
- menu.
-
- BRUSH EDITOR: The brush editor functions in every regard like the
- fill editor. The brush editor is called up whenever the user clicks on
- one of the user-defined brush selector boxes when no brush has yet been
- defined. The brush editor may also be called up by double-clicking on
- one of the user-defined brush selector boxes when it displays an
- already defined brush, thus allowing that brush to be altered or
- replaced.
-
- The brush editor will construct multi-colored brushes using the
- full palette allowed by the resolution the user is working in. These
- brushes may be up to 16x16 pixels in size.
-
- Brushes are SAVEd and LOADed in a 256-byte format in the ASCII
- value of the color numbers of the pixels, from the upper-left-hand
- corner, proceeding in left-to-right and top-to-bottom.
-
- RAY: Ray places a number of lines all drawn to a single center.
- Place the cursor at the point where you wish the center of the ray
- operation to be and click the left mouse button once to establish the
- center. Move the cursor to another location and click the left mouse
- button again. A line will be drawn to the center.
-
- Holding the left mouse button down as you move the mouse causes
- continuous printing of rays to the center. A right mouse click indicates
- that you are voiding the existing center location and wish to choose
- another center with a further left mouse click.
-
- While the INK function is active, the lines drawn by ray will be in
- solid colors, the color selected being indicated by the mouse color.
- When the INK function is off, the lines drawn by ray will be in the
- currently selected fill pattern, color or mono.
-
- Since a single right mouse click is used to allow the selection of
- new center locations without a return to the main menu, an additional
- right mouse click is required to exit the paint screen (or Escape).
-
- LINE: Lines are always drawn in the currently selected solid
- color (as indicated by the mouse color), never in the active fill
- pattern. A single left mouse click indicates the location of the
- starting point of the line to be drawn. An xor'ed line then follows the
- cursor around while the line end-point is being chosen. A second left
- mouse click fixes the line. A right mouse click voids the choice of
- starting point and allows a new starting point to be chosen.
-
- A right mouse click or Escape returns you to the main menu. Two
- right mouse clicks may be necessary if you have just voided a starting
- point.
-
- POLYLINE: Polyline draws connected lines in a closed figure
- (polygon). A single left mouse click indicates the location of the
- starting point of the polyline to be drawn. An xor'ed line then follows
- the cursor around while the next line point is being chosen. A second
- left mouse click draws the finished line to that intermediate point.
- This process continues until the right mouse button is pressed, which
- causes the next line segment to be drawn to the starting point, closing
- the figure.
-
- If the Alternate key is held down while the starting point is
- selected, the completed figure will be filled with the currently
- selected fill pattern. The Alternate key need not be held down with
- each successive left mouse click, only the starting point selection
- click.
-
- A second right mouse click or Escape returns you to the main menu.
-
- BOX: By box, SEURAT means an unfilled rectangle, or line figure. A
- single left mouse click indicates the location of the upper-left-hand
- point of the box to be drawn. An xor'ed box then follows the cursor
- while the lower-right-hand corner of the box is being chosen. A second
- left mouse click fixes the box in place. A right mouse click before the
- box is fixed voids the operation and allows a new upper-left-hand
- corner to be chosen.
-
- If the Alternate key is held down while the upper-left-hand corner
- is being selected, the completed box generated will be what is called a
- round-cornered box, although the actual figure is more like a clipped-
- cornered box.
-
- Boxes, like lines, are always drawn in the currently selected solid
- color, never the fill pattern. A right mouse click or Escape will
- return you to the paint menu.
-
- SOLID: By solid, SEURAT means a filled rectangle, or solid prism.
- The fill is always the currently active Fill Pattern. The resulting
- figure has no single-color perimeter.
-
- A single left mouse click indicates the location of the
- upper-left-hand point of the solid box to be drawn. An xor'ed box then
- follows the cursor while the lower-right-hand corner of the solid is
- selected. A second left mouse click fixes the solid in place. A right
- mouse click before the solid is fixed voids the operation and allows a
- new upper-left-hand corner to be chosen.
-
- If the Alternate key is held down while the upper-left-hand corner
- is being selected, the solid generated will be a round-cornered filled
- box.
-
- The solid is completely analogous to the box option in its
- operation. A right mouse click or Escape will return you to the main
- menu.
-
- CIRCLE: Circle (and disc) are analogous to box (and solid) in
- their operation. The figure drawn is actually an ellipse. A single left
- mouse click indicates the location of the center point of the ellipse
- to be drawn. An xor'ed ellipse surrounded by a dimension-box then
- follows cursor movement. The vertical and horizontal distances of the
- cursor position to the center determine the horizontal and vertical
- axes of the ellipse. A second left mouse click fixes the ellipse in
- place and removes the dimensioning box. A right mouse click before the
- ellipse is fixed voids the operation and allows a new center point to
- be chosen.
-
- If you wish a "true" circle, you must dimension it to what
- is "true" by your own eye. However, two other useful options are
- provided.
-
- Holding down Alternate while selecting the center point of the
- circle or disc being drawn allows subsequent left mouse clicks to draw
- circles or discs with the same center as the first. These subsequent
- circles and discs also possess the same shape as the first circle or
- disc drawn. This allows for the easy generation of concentric circles
- and discs.
-
- Holding down Control while selecting the center point of the circle
- or disc to be drawn allows subsequent left mouse clicks to draw circles
- or discs which possess the same horizontal and vertical sizes as the
- first drawn, but can be placed anywhere on the screen. This allows for
- the easy multiplication of identical circles and discs.
-
- A right mouse click is the signal that the user wishes to draw
- another set or type of circle or disc. Because of this use of the right
- mouse click, you must use Escape to return to the main menu from
- the circle (or disc) option.
-
- DISC: All procedures and options described above apply equally to
- the drawing of discs. The disc is merely a filled circle. The fill is
- the currently selected fill pattern. No solid color border is created
- with the figure (no visible perimeter).
-
- As with the circle option, a right mouse click is the signal that
- the user wishes to draw another set or type of disc. Because of this
- use of the right mouse click, you must use Escape to return to the main
- menu from the disc option.
-
- O-BOX AND O-CIRCLE: O-Box and O-Circle are a box and circle that
- is drawn in the currently selected color and which erases everything
- underneath the box or circle as it is drawn. Unlike the conventional
- box or circle, O-Boxes and O-Circles are drawn by depressing
- and dragging the left mouse button.
-
- The results of drawing an O-Box or O-Circle in a write mode other
- than overwrite are usually not intuitively obvious. Experiment with
- some of these widely varying outcomes. With a little practice and some
- mouse control, they can be quite striking.
-
- A right mouse click or Escape will return you to the main menu.
-
- AIRBRUSH: The airbrush "sprays" pixels in a circular random
- pattern weighted toward the center, much as an actual airbrush or spray
- can would.
-
- The circular area in which the airbrush is active is set by the
- user by depressing Control prior to holding down the left mouse button.
- A variable diameter circle will appear which can be sized up or down by
- mouse movement away from or toward the circle's center. The left mouse
- button must be kept depressed during this operation.
-
- If the airbrush is not "sized" by the user, it has a default
- diameter of six pixels. The airbrush is turned on by the left mouse
- button and remains active while that key is depressed.
-
- The speed with which an area fills up with pixels depends solely on
- the size of the active circular area selected while "sizing" the brush;
- larger is slower overall. When the active circular area is very small
- (about 3 pixels in diameter), the airbrush produces a very rapidly
- drawn "fuzzy" line.
-
- The airbrush paints in the currently selected fill pattern unless
- the INK function is on (highlighted), in which case it paints in the
- selected solid color (as indicated by the cursor color). The airbrush
- cursor is the normal arrow, but it is not printed to the screen during
- the airbrush's operation.
-
- If Alternate is held down when the left mouse key is first
- depressed, it does not "spray" pixels on the screen but rather "picks
- up" a pixel at random and exchanges it for another pixel at a different
- location, also selected at random. This randomization, or "smear
- "effect, (also called stipple in some programs) can be used to blend
- borders and blur too-sharp outlines. It produces a wide variety of
- effects depending on the size of the area affected. The area size is
- the same as the airbrush diameter (chosen with Control option).
-
- A right mouse click or Escape will return you to the main menu.
-
- TEXT: The text option allows the placement of input text on the
- paint screen. The cursor is a character cell approximately the size of
- the largest character in the typestyle you have selected.
-
- To input text, enter it in the conventional fashion, through the
- keyboard. The entered text is shown on the paint screen as a "floater"
- (just as the selected block is shown). The backspace key deletes the
- last entered character. Escape clears the line of type completely. All
- other keypresses are appended to the text string being displayed.
-
- Text cannot be "pushed off" the screen by the text cursor. Its
- placement must remain with the screen boundaries. (Note: Move the mouse
- in a controlled fashion when nearing the edge of the screen with a text
- "floater," as too rapid movement of the mouse at the edges of the
- screen can cause the text "floater" to get "stuck" on the screen edge,
- leaving a mess. Do not despair! The Insert-Undo erasure-and-update
- system works during the text option, too.)
-
- Maneuver the text "floater" into position and affix it to the paint
- screen with a left mouse click. A right mouse click (not Escape, which
- clears the text string) returns you to the main menu.
-
- A single left mouse click on the TEXT button on the main menu will
- select the text option. A double-click on this TEXT button calls up the
- text dialog box. Type styles are selected by clicking on the type style
- buttons in the upper portion of the text dialog box. Selection of any
- type style except NORMAL turns off the NORMAL button. The other type
- style attributes (italic, outline, bold, underlined, lightened) may
- be selected in combination with each other, i.e., bold italic. Clicking
- on NORMAL will clear all the other buttons.
-
- (The middle set of buttons, those for text rotation, are not
- currently implemented. All text is printed to the screen in the
- "normal" orientation.)
-
- The dot height selector allows values from 4 to 32. The currently
- selected dot height is shown in the window between the two arrows.
- Clicking on the left-hand arrow will reduce the dot height, and
- clicking on the right-hand arrows will increase it. The numerical range
- is modular, that is, trying to reduce the dot height from 4 to 3
- results in 32, and trying to increase it from 32 to 33 results in 4.
- The "canonical" sizes for text are 4, 6, 12, 24, 13, and 26 dots in
- height; text of other heights may not have a pleasing appearance.
-
- The type style selected is displayed in the strip window below the
- three sets of buttons. When the selected type color is the screen
- background color, the box is filled with the writing color. Every
- change made to the type attributes is reflected immediately in the type
- style display. Below the type style display is a color palette for
- choosing the text color; select with a single left mouse click.
-
- The text dialog box is exited by a right mouse click.
-
- The text dialog box can be accessed from the paint screen while
- entering text. Simply press the up arrow cursor key and the text
- dialog box will appear. All changes made to the type attributes in the
- text dialog box are reflected in the "floater" type string when you
- exit the text dialog box. Thus, all type attributes may be modified
- before the user prints the text to the screen.
-
- The full 256-character ASCII set of the ST is available in SEURAT.
- To access characters not assigned keys on the keyboard, simply press
- the down arrow cursor key and a full ASCII set selector box will
- appear. Select a character with a left mouse click. Up to nine
- characters (at each call of the ASCII set selector box) may be appended
- to the text string.
-
- Your selections are confirmed and the ASCII set selector box is
- exited by a right mouse click.
-
- To exit the paint screen from the text option, you must use a right
- mouse click (not Escape).
-
- PAINT SCREEN SELECTOR: Up to eight paint screens may be used in
- SEURAT; the precise number available depends on the memory capacity of
- your ST. Screens which are not available are shown with lightened
- letters; these paint screen selector boxes will not respond to mouse
- clicks.
-
- Each paint screen is a self-contained graphic entity with its own
- color palette, which becomes active when that paint screen is selected.
- Elements may be transferred between paint screens by means of the block
- function. This is a simple matter when the two paint screens involved
- have the same palette. In the case of differing palettes, the block may
- be "pasted" to an unused paint screen having the same palette as the
- destination paint screen and modified using the the color map routine
- (see the section on color map below). The active paint screen is
- selected by a left mouse click on one of the paint screen selector boxes
- "A" through "H." Each paint screen has its own palette which becomes
- active when that paint screen is selected.
-
- Additionally, the selected paint screen may be changed while the
- paint screen rather than the paint menu screen is displayed. The function
- keys switch paint screens, with F1 corresponding to screen A, etc.
- Calling a paint screen that doesn't exist (like F6 when you only have
- five screens active) has no effect. Switching paint screens without
- returning to the paint menu screen forces an automatic update of the
- paint screen you are switching from, just as if you had keyed Insert
- before switching. A double click on the active paint screen selector box
- calls up a dialog box which allows the user to copy the currently
- selected paint screen and its active palette into any other paint screen.
- This function will totally erase any elements already contained in the
- destination paint screen. The screen copy dialog box (like the screen
- assignment dialog box in the image load process) shows the filenames of
- any images loaded into the eight paint screens. The destination paint
- screen is chosen by a left mouse click on the appropriate screen label
- button. The user's action is reflected in the message line, the screen
- status display which registers which screens are copies and which screens
- were loaded from files, and by the highlighted button. Click the right
- mouse to confirm and exit. A double click on the active paint screen
- selector box made while the Alt key is depressed calls up a dialog box
- which allows the user to import any other paint screen's active palette
- to the selected paint screen. This function will replace the selected
- paint screen's palette with the palette of the source paint screen. The
- palette copy dialog box functions in an analogous manner to the screen
- copy dialog box explained above. Clicking on the last or highest paint
- screen selector box while the Control key is depressed will cause that
- paint screen to be voided and removed from further access for the purpose
- of freeing up memory resources. See the section on memory management for
- a discussion of reducing the number of paint screens available, in order
- to increase memory freespace.
-
- PALETTE DISPLAY: The colors are arranged from the screen background
- color (color 0) at the upper-left-hand color box to the writing color
- (color 15, or 3, or 1, depending on the resolution) at the lower-
- right-hand color box.
-
- A left mouse click will log in, or select, a color. The mouse will
- turn the color currently selected and remain that color until another
- color is selected.
-
- A double click on any of the color boxes in the palette display
- will call up the palette editor dialog, in which palettes may be set,
- modified, and SAVEd to and LOADed from the disk. See the section on the
- palette editor (below).
-
- One of the most laborious aspects of any paint program is having to
- flip back and forth to-and-from a menu screen in order to reselect
- colors. SEURAT allows the user to make color selections without
- flip-flop, directly from the paint screen.
-
- Simply press the Help key and the palette display will be printed to
- the paint screen in the same location that it is to be found on the paint
- menu screen. Select a color with a left mouse click. The mouse will
- change color correspondingly. Then, a right mouse click unprints the
- palette display. (The palette display must be unprinted before you can
- proceed with any operation!)
-
- This process can be repeated as often as is required without leaving
- the paint screen. When you return to the paint menu screen, the selected
- color will be restored to the color that was selected when you entered
- the paint screen.
-
- PALETTE EDITOR: The palette editor screen displays the full color
- palette in a format arranged as the color palette is shown on the paint
- Menu Screen and the Zoom Screen. In addition, it shows the color Number
- and intensity values for each color.
-
- The color currently selected is indicated by the color of the palette
- mouse (a palette with the abbreviation PAL beside it), except in the
- screen background color, when the palette mouse has the writing color.
- The action point of this mouse is in the center of the figure.
-
- The selected color number is shown in a box at the upper center of
- the palette editor screen. Beside this box are the two color system
- selector boxes. Color intensities may be shown in either the RGB system
- native to the ST or in the Cyan-Magenta-Yellow system as used in color
- photography. A left mouse click on the appropriate color system selector
- box toggles the numerical display into that color system. Choice of color
- system in no way affects the actual operation of the program; it is
- merely a convenience for those more accustomed to the photographic frame
- of reference.
-
- Individual color intensities may be altered by clicking on the
- appropriate digits in the numerical display.
-
- Below the numerical display, the View button allows the user to see
- the effect on the paint screen image of any changes made. The user may
- return to the palette editor from the full-screen view by a right mouse
- click or the Esc key. While the image is in the view mode, no mouse is
- visible.
-
- Palettes may be SAVEd or LOADed by clicking on the buttons so
- designated. Palette files have the file extension .PL1, .PL2, or PL3.
- They are 32 bytes in length and are in the same form as used in the 3rd
- through 34th bytes of the DEGAS picture format.
-
- The RESTORE button sets the palette back to whatever values it had
- when the user entered the palette editor.
-
- The palette editor implements a color swap feature, similiar in its
- usage to the auto color change feature of the fill editor. Double-
- clicking on any color display box will swap that color in the palette
- with the color currently selected. The selected color remains selected.
- This feature is useful for swapping the screen background color with the
- writing color, for example, as well as for easier rearrangement of the
- palette.
-
- The palette editor must be exited with a right mouse click or by
- keying Esc.
-
- While running SEURAT in monochrome, the palette editor is not
- accessible, for obvious reasons, but several additional functions beyond
- choosing black or white are available!
-
- In monochrome, double-clicking on the first color box of the palette
- display (the screen background color) will cause it to reverse, thus
- producing a paint screen image that is a "negative" or inverse of the
- original image.
-
- Also in monochrome, double-clicking on the first color box (color 0)
- of the palette display while you are holding down the Alt key will
- reverse both the monochrome "color palette" and the image itself, thus
- allowing a palette swap without altering the image. These two features
- function only in high resolution (monochrome monitors).
-
- INK: Clicking on the INK button toggles the fill selection to MONO
- solid fill (number 7). INK is turned off by a) another left mouse click
- on the INK button, b) chosing any other MONO fill pattern besides SOLID,
- or c) clicking on the COLOR fill selector button. When INK is on, most
- painting and drawing functions are performed in solid colors.
- Additionally, when INK is on, the active user-defined brush (bottom row
- of the brush selector boxes) are printed to the screen in the multi-color
- mode. When INK is off these brushes are printed in the currently active
- fill pattern. (See the section on brushes or the brush editor.) The INK
- button is highlighted when the INK function is on.
-
- CLIP: Clipping restricts all graphic functions to a predefined
- rectangular area of the screen. Clipping is what GEM uses to limit
- graphic output to windows, for example. SEURAT places control of clipping
- in the user's hands. A double click on the CLIP button calls up the paint
- screen with a thich crosshair mouse. Dragging with the left mouse key
- held down will define an active area for graphic operations.
-
- After the clipped area has been defined, a click of the right mouse
- key will return you to the paint menu. You will notice that the CLIP
- button has not highlighted by setting the clipping coordinates. A single
- click with the left mouse key on the CLIP button toggles the clip
- function on and off. The CLIP button is highlighted when clip is active.
-
- If you attempt to turn clip on without setting clipping coordinates
- first, an alert box will inform you that no coordinates have been set.
- Once the clipping coordinates are set, they are retained by SEURAT until
- they are reset. This is true whether the clip function is on or off; that
- is, clipping coordinates do not have to be set every time clipping is
- turned on.
-
- The clipping coordinates may be displayed on the paint screen at any
- time by pressing the "C" (or "c") key. The clipping rectangle will be
- displayed until removed with a right mouse click. No operations are
- possible until the clipping rectangle display is removed.
-
- AUTO: (See the section on ERASE AND UPDATE, below.)
-
- POP-OUT MENU: Pop-out menus are called by clicking on the
- appropriate menu button. Once they appear, the mouse must enter the menu
- panel. A frame cursor follows the mouse from item to item. If the mouse
- exits the menu panel without selecting an item the pop-out menu
- disappears and no action is taken. If an item is selected by a left mouse
- click, the menu panel is removed and the selection is acted upon.
-
- (Note: the frame cursor is normally printed in the frame or border
- color, the second highest color number. Should this color be similar to
- the screen background color and hard to see, it may be changed to the
- writing color by pressing the Esc key. Another press of the Esc key
- toggles back to the frame color. The frame cursor must be moved before it
- will be printed in the new color.)
-
- The MENU button on the paint menu screen calls up a pop-out menu
- containing the following options: Erase, which erases the paint screen;
- Zoom, which allows individual pixels to be drawn; File, which calls up
- the file function dialog box; block menu, a further pop-out menu which
- accesses block manipulations; Transforms, a subroutine to perform
- geometric transformations on entire paint screens; color map, a
- subroutine to remap the color number assignments of pixels; and Quit,
- the program exit.
-
- QUIT: There are more reasons than neatness for exiting the program
- by way of the Quit option. The program closing routine restores your ST
- to whatever configuration was set when you entered the program: drives,
- Desktop palette, clipping coordinates, some poking around down into the
- basement of the memory where pokes do strange things. Besides, there's no
- other way out, except to (arghh!) reset or turn the machine off. (Don't
- do it!)
-
- The File option calls up the file function dialog box, which offers
- five disk routines. They are: a) Load an image file, b) Save an image
- file, c) Delete any file, d) Set currently active disk drive, and e)
- Format a disk (in the currently selected drive). Any number of file
- operations may be carried out from the file function dialog box without
- the user having to call it up again. The file function dialog box is
- exited by a right mouse click.
-
- While operating out of the file function dialog box, the cursor is
- configured like a floppy disk with the word "File" on it. The action
- point of this mouse is in the center of the figure.
-
- LOAD IMAGE FILE: When loading an image file, the user will be
- presented with the GEM file selector box. The file specification demands
- an image file in the uncompressed DEGAS format with the file extension
- .PI1, .PI2, or .PI3, depending on the resolution in which the program is
- being run. In low resolution, SEURAT will load a NEOchrome image file
- with the file extension .NEO; however, such files, once loaded, will be
- only be saved in the DEGAS format.
-
- After the user has selected an image and its presence on the disk has
- been verified, SEURAT with present the user with the image assignment
- dialog box. The user must assign the image to be loaded to one of the
- valid paint screens. A screen status table keeps track of which files
- have been loaded into which paint screens.
-
- The paint screen selection may be changed any number of times before
- confirming and exiting the image assignment dialog box with a right mouse
- click. The message line and the screen status table are updated
- continuously prior to exit. Assigning a loaded file to a paint screen
- erases all preexisting contents of the paint screen. The user is not
- querried or alerted to this possibility. When the image file is loaded to
- a paint screen, that paint screen becomes the currently selected paint
- screen.
-
- AUTO-LOAD OPTION: Often, work on a single image will extend over many
- sessions with the program. To facilitate the multi-session work on a
- single picture, I added the auto-load option. Any image file named
- PICTURE.PI? (the ? indicates the appropriate boot resolution) will be
- automatically loaded into paint screen A when SEURAT is loaded and run.
- The PICTURE.PI? file must be on the root directory of the disk, not in a
- folder.
-
- SAVE IMAGE FILE: The save image option always saves the currently
- selected paint screen. The GEM file selector box called up will show as
- default filename the filename the image was loaded under, if the image
- was originally loaded into the currently selected paint screen.
-
- If the filename you have supplied does not already exist on the disk,
- SEURAT will check the disk space available before attempting to write the
- file to disk and you will be alerted if disk free space is less than the
- required 32034 bytes. If the filename supplied by the user already exists
- on the disk, it will be overwritten without any further query of the
- user.
-
- FILE DELETE: Any file on the disk may be deleted by choosing it
- with the GEM file selector box. The user will be asked to confirm the
- deletion operation.
-
- SET DRIVE: The drive selector dialog box shows the sixteen potential
- drives supported by GEM. Unavailable drives are indicated in lightened
- letters. Drives A and B always exist, even on a single drive system, as
- logical drives. The user's selection is shown by the highlighted drive
- box. No selection is validated until the Drive selector dialog box is
- exited by clicking on "OK." Should a non-connected drive be selected by
- the user, the choice is invalidated just as would occur had the user
- clicked on "CANCEL."
-
- FORMAT DISK: The disk format dialog box is virtually identical with
- the GEM format dialog box and functions in the same way. The disk to be
- formatted should not be inserted until SEURAT prompts you to do so. The
- format operation must take place in drive A. Any errors encountered in
- the formatting operation (or the hopeful absence thereof) are reported
- after the operation is complete. The formatting operation may be repeated
- as many times as desired without exiting the disk format dialog box.
-
- For a discussion of the other pop-out menu functions (zoom,
- transform and color map), see the relevent sections below.
-
- BLOCK MENU: This option on the principal paint menu screen pop-out
- menu calls up another pop-out menu, above the first, containing options
- for the manipulation of blocks, as well options to LOAD and SAVE blocks
- to disk.
-
- They are: a) Rotate block, b) Re-size block, c) Vertical Freeform
- Distort, d) Vertical Arc Distort, e) Vertical Skew Distort, f) Vertical
- Trapezoidial Distort, g) Horizontal Freeform Distort, h) Horizontal Arc
- Distort, i) Horizontal Skew Distort, j) Horizontal Trapezoidial Distort,
- k) Distort, l) Load block, and m) Save block.
-
- All block manipulation routines use the same mouse protocol. After
- the user has indicated the the operation to be performed with the left
- mouse button, a right mouse click causes the indicated operation to be
- performed. When it is concluded, the user has three options: a left mouse
- click voids the completed operation and allows for a repeat operation
- on the same block to be performed; a right mouse click confirms the
- already-completed operation and causes the modified block to become the
- currently selected block, exiting the manipulation routine; and pressing
- the Undo key voids the already-completed operation and exits the
- manipulation routine with the original form of the block continuing to be
- the currently selected block.
-
- All block manipulations are carried out on a single screen, which
- must contain either the original block and the modified block or the
- original block and certain modification indicators. This means that there
- is a physical limitation upon the size of the block that can be modified
- successfully.
-
- SEURAT does not calculate these size limitations; the rule here
- is: if it works, great; if not, try again with a smaller block.
-
- ROTATE BLOCK: The block is presented center-screen; above it is
- rotation selector box. Rotation is calculated in the natural order of the
- trigonometric functions, that is, with the 0° point directly to the right
- of the center point and with rotation in the counter-clockwise direction.
- Rotation in the clockwise direction is accounted negative rotation.
-
- Left mouse clicks on the directional arrows set the number of degrees
- for the rotation. Holding down the left mouse key will cause the numbers
- to advance rapidly. An xor'ed box shows the rotated orientation of the
- block. A right mouse click causes the operation to be performed. The
- original block is placed in the upper-left-hand corner of the screen and
- the rotated block is formed in the lower-right-hand corner of the screen.
-
- When the operation is complete, a right mouse click confirms the
- new block, a left mouse click causes the operation to be repeated, and
- Undo voids the operation without result.
-
- (Please note that the rotation options on the transform menu produce
- vastly superior but slower results for rotations which are modular to 90
- degrees.)
-
- RESIZE BLOCK: The block is presented in the upper-left-hand corner
- of the screen with an outline box showing the right and bottom edges of
- the block. Grab the lower-right-hand corner of the block with the left
- mouse button and drag it to the position it will occupy in the new block.
- When the user releases the left mouse button, the operation will be
- performed. The resize option allows for both enlargement and reduction
- of the block.
-
- If the Alt key is held down while the left mouse button is first
- depressed, the resulting block will have the same proportions as the
- original block. If the Control key is held down while the left mouse
- button is first depressed, the resulting block will be enlarged or
- reduced to the same scale as the last completed resizing operation
- performed. This allows a series of different blocks to be resized
- identically. This feature is of use when a very large block is to be
- segmented, resized, and recombined, also when portions of different paint
- screens need to scaled identically.
-
- When the operation is complete, a right mouse click confirms the
- new block, a left mouse click causes the operation to be repeated, and
- Undo voids the operation without result.
-
- FREEFORM MANIPULATION: The following applies to both vertical and
- horizontal freeform manipulations. The block is placed to one side of an
- orientation line the height or width of the block. By dragging the left
- mouse button to one side or the other of the orientation line, the
- orientation line is deformed, pixel by pixel, to the path of the mouse.
- Do not attempt to move the freeform shape of the orientation line nearer
- to the block, but shape it centered on the original position of the
- orientation line.
-
- A right mouse click will cause the block to be distorted to the
- outline you have drawn. The freeform distort contour may be manipulated
- indefinitely before commencing the operation. After the operation is
- completed, it may be repeated by a left mouse click. Undo cancels the
- operation and returns without result.
-
- ARC: The following applies to both vertical and horizontal arc
- manipulations. The block is placed to one side of a gate through which a
- circular form squeezes back and forth as the user moves the cursor
- without depressing any mouse buttons. The gate is the height or width of
- the block.
-
- When the center of the circle is between the gate and the block, the
- block will be distorted to the contour of that portion of the circle that
- is on the side of the circle away from the block. In this case, it does
- not matter if a portion of the circle passes through the block.
-
- When the center of the circle is on the side of the gate away from
- the block, the block will be distorted to the contour of that portion of
- the circle that is on the side of the circle nearest to the block. In
- this case, do not allow a portion of the circle to pass through the
- block, as the central portion of the new block will not be successfully
- modified.
-
- In the case of a block very large in the dimension to be modified,
- some or all of the gate may not be visible on the screen. The operation
- will be performed successfully, however, whether the gate is visible or
- not.
-
- Again, a right mouse click will cause the block to be distorted to
- the arc you have positioned. The circle may be manipulated indefinitely
- before commencing the operation. After the operation is completed, it may
- be repeated by a left mouse click. Undo cancels the operation and returns
- without result.
-
- SKEW: The following applies to both vertical and horizontal arc
- manipulations. The block is placed to one side of a gate through which a
- skew-line is drawn. The skew-line may be pivoted about the center of the
- gate as the user moves the cursor without depressing any mouse buttons.
- The gate is the height or width of the block.
-
- A right mouse click will cause the block to be skewed to the
- inclination of the skew-line. After the operation is completed, it may be
- repeated by a left mouse click. Undo cancels the operation and returns
- without result.
-
- TRAPEZOIDIAL DISTORT: A box is printed to the dimensions of the
- block. The corners of this box may be moved by dragging on them with the
- left mouse button depressed. The mouse cursor must approach to within
- three pixels of the corner to "grab" it. In the vertical operation, only
- the Y- coordinates of the corners may be altered; in the horizontal, only
- the X- coordinates.
-
- A right mouse click will cause the block to be mapped to the
- resulting trapezoidial figure. After the operation is completed, it may
- be repeated to new parameters by a left mouse click. Undo cancels the
- operation and returns without result.
-
- In the case of extreme distortions, it may happen that curvilinear
- patterns of unfilled pixels are found in the distorted image. If the Alt
- key is held down when the right mouse button is clicked, the operation is
- performed with bigger "transfer pixels." However, this may result in an
- increase in "chunkiness" elsewhere in the image.
-
- DISTORT: This is the all-purpose image manipulation routine. Unlike
- the trapezoidial distort, the four corners of the outline box may be
- placed anywhere on the screen. (But do not allow them to intersect the
- displayed block itself!) Distort scales up and down in size while
- performing rotations and displacements. It is surprizingly fast (well, it
- surprised me...) Oddly enough, it can perform a simple rotation faster
- than the rotate option and with as great accuracy, but without using
- trigonometric functions. Hmm..
-
- Usage is the same as the trapezoidial distorts (including the
- fill-out option of the Alt key; see above).
-
- LOAD AND SAVE: Blocks may be saved to disk and loaded from disk. No
- palette is saved with the block. The format of the block file is: one
- word (two bytes) giving the width of the block in pixels, one word (two
- bytes) giving the height of the block, and a string of variable length
- containing that portion of the screen as stored internally by GFA BASIC.
-
- GEM MENU ACCESS: As you have almost certainly guessed by now, from
- the descriptions of the various menus or from running the program itself,
- SEURAT is not a GEM menu program with the traditional menu bar across the
- top of the screen. However, this does not mean that you are denied access
- to desk accessories!
-
- By double-clicking on the MENU button on the paint menu screen, you
- can access a pseudo-desktop from which your desk acessories can be
- called. This "desktop" will possess the color palette of the desktop from
- which you booted SEURAT.
-
- In addition, under the "File" heading, the file function dialog box
- can be called, although the "Load Image" and "Save Image" options are
- unavailable through this "desktop." This does allow the user to change
- the selected drive, format a disk, or delete any file.
-
- You can also call the GFA BASIC FILES function for a file directory
- of the currently selected drive from the "File" heading on the menu bar.
- It will show the presence of folders but not their contents. (This
- feature may result in a rapid scroll-over if there are more than 22 files
- and folders present.)
-
- The option to return to the SEURAT paint menu screen is located just
- under the "Desk" heading, where the credits or advert alert is usually
- placed. SEURAT can be exited from this "desktop" by the "Quit SEURAT"
- option.
-
- (Note: Calling the Control Panel accessory, or any other accessory
- that changes or can change the color palette, will have no effect on
- SEURAT's color palettes, which will be reinstated upon return to the
- paint menu screen, voiding any changes made from this "desktop.")
-
- The availability of desk acessories means, among other
- possibilities, that you can load Print Drivers (Tom Hudson's INSTALL.ACC
- in the first issue of START) or load any of a wide variety of alternate
- fonts for use with the TEXT option (the public domain FONTRIX.ACC).
- Although the Control Panel cannot be used to set the color palette, time
- and date marking for files, keyboard delay and repeat rates, and so forth
- can be set. The mouse double click speed cannot be set with the Control
- Panel, as SEURAT has its own routines for that function. (It can be
- adjusted, however; see the discussion of the Zoomscreen below.)
-
- OPERATIONS ON THE PAINT SCREENS
-
-
- ERASE AND UPDATE: The paint screen can be erased entirely by
- selecting the "Erase" option from the pop-up menu, presently the user
- with a blank screen. This "Erase" is an irrevocable command and cannot be
- undone.
-
- Controlled deletion of screen elements is left to the user's
- management in SEURAT. Screen updating is performed by pressing the Insert
- key while the paint screen is displayed. Insert triggers a screen
- capture, and no element, once updated, can be undone. The user can, of
- course, manually erase any element by painting it with a brush in the
- background color, drawing a solid geometric form in the background
- color over it, or otherwise tinkering with the pixels.
-
- Pressing the UNDO key while the paint screen is displayed erases all
- operations performed on the paint screen since the last INSERT keypress.
- An UNDO cannot be undone, except by performing the operations again.
-
- Updating of the paint screen is NOT performed automatically by
- SEURAT (except by the AUTO function; see below). Therefore, it's a good
- idea to acquire the habits of a) concluding every successful operation by
- punching the Insert key (rather like keying Enter), or b) making frequent
- Insert's, or c) keying Insert before attempting anything you think you
- might mess up...
-
- The Undo-Insert system functions with all paint screen operations
- except block, which has its own system.
-
- Block functions have their own item-by-item undo stack, which is
- currently configured to be up to 100 items deep. This can be very handy
- in a messy situation, but it can cause a mess, too. Attempting to place
- 100 2500-byte blocks, will create an Undo stack that uses a
- quarter-megabyte of memory. This would almost certainly crash the program
- (unless you're running it on a Mega, lucky you...)
-
- While the block undo stack persists and is always available while the
- paint function is block, the two undo systems (block undo and Undo-
- Insert) do not take notice of each other. No block operations are a
- permanent part of the paint screen until an Insert is pressed. On the
- other hand, the block undo can undo a block operation even though the
- paint screen has been updated by Insert.
-
- Block undo removes blocks in the inverse order of their placement.
- block undo is valid only for the paint screen where block placement has
- been performed, whether the block was drawn from that screen or another.
- Block undo is valid for that paint screen even though the user has
- switched to another paint screen and back again, as long as no
- intervening block placements are made on any other paint screen (since
- the undo chomps down the stack in inverse order, destroying the saved
- screen portions under the block placements but only restoring those on
- the visible paint screen). Of course, it you can remember what order you
- placed what blocks on which paint screen, you could unprint them all in
- inverse order.
-
- The block stack works like this: the portion of a paint screen where
- a block is to be placed is saved to the stack before block placement and
- the stack pointer is incremented. The index of the paint screen is saved
- with the block. When the user keys Undo, the stack pointer is decremented
- and the screen portion is put back where the block was placed only if the
- current paint screen is the same one where the block was originally
- placed. If it is not the same paint screen, nothing is done to the paint
- screen, but the screen portion is cleared from the block stack, i.e.,
- wiped out.
-
- As you continue to place blocks on various paint screens, you will
- notice a steady decline in the amount of free memory shown in the FRE
- ledger line as the Undo stack grows. Once you are certain you will not
- need to undo any block placements, the block undo stack can be cleared by
- pressing the Backspace key.
-
- Note that the screen portion that replaces the block was saved when
- the block was placed, and therefore any other paint operations performed
- on the area of the block between the time the block was placed and the
- time it is undone are not preserved (unless they were other block
- placements).
-
- The AUTO option toggles on and off the execution of an automatic
- paint screen update (just as if the user had keyed Insert). This paint
- screen update is performed each time the user switches from the paint
- screen to the paint menu screen or to any other paint screen. Activation
- of the AUTO mode in no way interferes with the Undo-Insert or block undo
- systems. The user may make additional updates by means of Insert at any
- time. The AUTO button is highlighted when AUTO mode is active.
-
- MEMORY MANAGEMENT: At startup, the program creates screens until the
- free memory that would be available to the running program falls below
- 184,000 bytes. This results in a variable memory workspace depending on
- the machine configuration, number of active accessories, etc. Currently,
- SEURAT running on a 1040ST with no desk accessories active provides 5
- paint screens in low, 6 in medium and 7 in high resolution.
-
- Running the source code through the interpreter allows more screens
- than the compiled program, a memory bonus that is more than compensated
- for by the often-slower program operation. For the maximum memory
- overhead, run SEURAT without any desk accessories active.
-
- SEURAT is not wasteful of memory resources. It contains its own
- "garbage-collection" routines; storage variables are cleared after use,
- dimensioned variables are erased when not in use and redimensioned again
- when needed, etc.
-
- The 180,000 to 210,000 bytes that SEURAT allows for workspace is not
- sufficient for all operations that can be performed. That is, depending
- on the tasks you perform, it is possible for SEURAT to run out of memory!
- I emphasize this fact because doing so will cause the program to crash in
- flames, that is, terminate. But read on...
-
- For example, that is not enough memory workspace for the user to
- select a block that is three-quarters of a screen in size and resize it
- to a full screen. (Block manipulations are the the biggest memory
- consumers.)
-
- What will you do? The answer is: SEURAT allows the user to monitor
- and manage its memory requirements from within the running program.
- Hmmm...
-
- Paint screens are provided for in memory when the program is loaded
- and run. Each paint screen consumes 32000 bytes of memory. Paint screens
- may be deleted from program access and their alloted memory turned back
- to the program for other uses.
-
- To release memory, select the last accessible active screen selector
- Box. That is, if "G" is the last paint screen selector box printed in a
- normal (not lightened) letter, click on it to highlight (select) it.
- Then, with the Control key depressed, double click on it. The "G" box
- will unhighlight, the box immediately above it (in this case, the "F"
- box) will highlight and become the selected paint screen. The "G" box
- will become unselectable (printed in a lightened letter), and the FRE
- memory register will show an increase of 32000 bytes.
-
- This process may repeated any number of times, but SEURAT will not
- allow you to remove the "A" paint screen! A paint screen that has been
- made unselectable cannot be returned to active status during the same
- run of the program. To regain the full screen capability, you must save
- your work and rerun the program.
-
- So that the user does not have to keep watching the FRE register,
- SEURAT provides a low memory warning: a burst of musical noise which
- changes pitch with each repetition. This warning is sounded whenever free
- memory falls below 64000 bytes.
-
- THE SEURAT ZOOMSCREEN
-
- To access the Zoomscreen from the paint menu screen, the user may
- select the "Zoom" option from the pop-out menu or press the Clr/Home
- key.
-
- THE SET WORK SCREEN: If you have not yet entered the Zoomscreen
- since the beginning of program operation, you will be presented with the
- currently selected paint screen upon which to set the work area to be
- enlarged. You'll know that it is the set work screen because the mouse,
- while having its normal coloration, is upside-down; it is now a down
- arrow instead of an up arrow.
-
- Set work screen operation is as follows: a left mouse click will
- cause the appearance of an xor'ed box twenty pixels square. All SEURAT
- work areas are square in configuration.
-
- This work area may be enlarged to fifty pixels square in low
- resolution, a square one hundred by fifty pixels in medium resolution, or
- one hundred pixels square in high resolution. To enlarge the original
- square, depress the left mouse button and drag it downwards. The work
- area may not be enlarged beyond the limits given above no matter how far
- you drag the mouse.
-
- The range of zoom magnifications is 4 power to 10 power for low
- resolution and 4 power to 20 power for high resolution. (In medium the
- maximum magnification is 20 power along the x-axis and 10 power along the
- y-axis.) The magnification selected will be the highest one consistent
- with the maximum Zoomscreen size.
-
- This work area sizing operation may be repeated as many times as
- needed. If so, previously drawn boxes will be erased when a new work area
- is sized.
-
- The work area selector box may be positioned by pushing with the
- right mouse key depressed. (The mouse is now upsidedown so it can't be
- dragging any more, can it?) The work area can be positioned on any pixel
- boundary.
-
- Both operations can be repeated as many times as needed by the user.
- The number of each, left mouse and right mouse operations, need not be
- equal. On the first use of the set work screen option at least one left
- mouse and right mouse operation must be performed, but on subsequent
- returns to set work screen the currently selected work area size can be
- positioned by right mouse operations alone.
-
- When the work area has been selected, it will be zoomed when the user
- presses the Esc key.
-
- THE ZOOMSCREEEN: The maximum area allowed for zoom operations is a
- square placed at the left-hand boundary of the screen, a maximum of 62.5%
- of the screen area. The number of pixels per side of the work area is not
- rationalized to integer multiples of the magnification, so the zoom area
- may be somewhat smaller than the maximum. It will always be presented at
- the highest magnification possible, however.
-
- The magnification factor of the zoom ratio is shown just above the
- view window in medium and high resolution. In low resolution, it is
- displayed just below the menu button where, in the other resolutions,
- free memory will be displayed. (In low resolution, this display may be
- selected for zoom ratio or free memory display by pressing the "F" or "Z"
- keys.)
-
- The enlarged, or zoom, pixels are presented on the zoomscreen in a
- discontinuous rather than continuous format. Their appearance is rather
- like electronic graph paper (more about graph paper later). The zoom
- pixels are positionally correct; they are merely one pixel less wide than
- the magnification ratio. (This looks less confusing than it sounds.)
-
- A grid may be superimposed on the pixels. SEURAT calculates the
- luminousity of the background color and makes an arbitrary decision about
- whether or not to grid the first zoom of the first work area. Following
- this, the grid may be toggled on and off by keying the F1 (function) key
- (the grid toggle may also be selected from the pop-out menu; see below).
- SEURAT performs all subsequent zooms in conformity to the last grid
- toggle made by the user.
-
- ZOOMSCREEN VIEW WINDOW: The Zoomscreen view window displays an
- upright rectangle which reveals a portion of the paint screen, that
- portion which surrounds the work area. The work area itself is marked
- with an xor'ed box in the view window.
-
- The Zoomscreen's view window functions like the paint menu screen's
- view window, but with some additional functions. The X and Y coordinates
- of the upper-left-hand corner of the work area are displayed in the lower
- view window border. (There is also a "Z" box which we'll talk about in a
- minute.)
-
- To select a new work area, the user does not have to return to the
- set work screen. The new work area can be selected and zoomed from the
- Zoomscreen through the view window.
-
- The area to become the selected work area can be scrolled up, down,
- left and right one pixel at a time by clicking on the directional arrows
- in the corner boxes of the view window border. (Note: The arrows refer to
- the direction of movement of the window, not the movement of the portion
- of the image shown.)
-
- The work area can also be shifted much more rapidly by dragging with
- the left mouse button on the vertical or horizontal sliders seen in the
- upper and left-hand portions of the view window's border. (Note: The
- sliders alone are not able to reach the last few pixels at the edge of
- the paint screen, but the arrows can shift the work area to the very
- edge. In general some "fine tuning" by the arrows may be necessary for
- precision positioning, if required.)
-
- The work area will remain centered in the view window and the paint
- screen will be scrolled until such time as the boundaries of the image
- are approached. Then, the work area will shift in the view window until
- the edge of the paint screen is reached.
-
- You will note that with the first movement of the work area selection
- frame on the view window, that "Z" box that we mentioned just a moment
- ago became highlighted. This indicates that the reselection process has
- made a new zoom a program requirement. While the "Z" box is highlighted,
- no Zoomscreen functions are active except those that relate to work area
- selection through the view window.
-
- This allows you to rove over the entire paint screen if necessary
- without zooming each area you pass over. When the work area selection
- frame is positioned as desired, a left mouse click on the "Z" box will
- zoom the newly selected work area.
-
- During work area selection, the work area may be resized if needed.
- Pressing the up arrow key in the cursor block causes the work area
- selection frame to be enlarged one pixel at a time until the maximum
- permissible size is reached. The down arrow key reduces the size of the
- work area selection frame one pixel at a time until the 20-by-20-pixel
- minimum size is reached.
-
- The work area selection frame expands and contacts in alternate
- directions on alternate keypresses in order to keep the work area
- centered on the same portion of the image.
-
- Resizing the work area without any other movement commands will
- also cause the "Z" box to highlight, requiring a new zoom.
-
- The "Z" box can clicked at any time to produce a zoom, whether
- required by the program or not. It will not highlight in these cases.
-
- RETURNING TO THE SET WORK SCREEN: If you prefer to return to the set
- work screen to select a work area, simply press the Esc key.
-
- DRAWING ON THE ZOOMSCREEN: The user may draw on the Zoomscreen with
- both left and right mouse buttons, each in a different color. The
- selected left and right mouse colors are shown at the top of the right-
- hand portion of the Zoomscreen. Beneath each mouse color box is the RGB
- (or CMY,depending on the color system selected) of the two mouse buttons.
-
- The right and left mouse colors are selected by clicking with the
- right or left mouse buttons on the desired color in the color palette
- display just above the view window. While it is a convenience to have two
- colors simultaneously available to the mouse buttons without reselecting
- in low resolution, it is virtually a requirement in high resolution if
- one is to achieve a reasonable pace of work.
-
- While the mouse is on the zoomed pixel portion of the Zoomscreen, the
- mouse is displayed in the last color either selected or printed to the
- Zoomscreen. When the mouse traverses off the zoomed pixels, it is changed
- to a crosshair.
-
- SETTING THE MOUSE FACTORS: SEURAT utilizes two program variables, the
- mouse click delay factor and the mouse flicker delay factor. They may be
- set by pressing the F6 key, which will call up a mouse factor dialog box.
- The factors may be set from 0 to 99 by clicking on the arrows. Exit the
- dialog by a right mouseclick.
-
- The mouse flicker delay factor is a variable in the zoomscreen mouse
- drawing routine that greatly reduces mouse flicker when drawing on the
- Zoomscreen. It does not produce a totally flickerless mouse, but a
- properly adjusted factor can cut out most of the printing and unprinting
- of the mouse that GEM wants to do. The magnitude of the mouse flicker
- variable determines how long the program waits for the mouse to move
- before printing the clicked zoomed pixel to the Zoomscreen.
-
- I have set the default values of 27 for mouse flicker and 50 for
- mouse click by trial and error, but one value does not work equally well
- when running SEURAT as SEURAT.PRG and when running the code through the
- interpreter or the run-only program, and you may wish to tinker with it.
- Different magnification ratios and your mousing habits will also affect
- the result.
-
- Likewise, SEURAT uses its own routine to read double mouse clicks,
- rather than relying on GEM. This routine is configurable to read almost
- any number of mouse clicks. (GEM has a terrible time trying to read
- triple clicks, much less 4, 5...)
-
- If your double-click doesn't always register with SEURAT, your
- clicking may be too slow. Increasing the mouse click delay factor allows
- more time for a doubleclick to be read. Conversely, really fast mousers
- might get three clicks in during the allotted time, which would produce
- no result. Reduce the mouse click factor, but DO NOT SET IT AT ZERO!
-
- The default values are set whenever the program is loaded; the
- user's setting during the program are active only during the program
- run
- and are not preserved. The time unit of these factors is 1 = 1/200th
- second.
-
- COLOR CHANGE FEATURE: If the Alt key is held down while the mouse
- keys are also depressed, only pixels of a single color will be drawn to.
- When the left mouse button is depressed with Alt, only pixels of the left
- mouse color will be changed to the right mouse color. No other pixels
- will be affected. Conversely, when the right mouse button is depressed
- along with the Alt key, only pixels of the right mouse color will be
- changed to the left mouse color.
-
- GRID COLOR: When working in low resolution particularly, the color
- of grid, when toggled, can greatly contribute to or detract from the
- process of drawing on the Zoomscreen. Converting the grid color to the
- color of one group of pixels solidifies those portions of the image and
- throws the remaining pixel colors into greater contrast. The grid color
- is selectable by the user.
-
- By pressing Shift and the F1 (function) key together, the mouse is
- converted to the gridmouse. (The action point of this mouse is in the
- center.) Click with the left mouse on the desired color from the color
- palette display. Click with the right mouse to confirm your choice. A
- grid of the selected color will be activated if the grid toggle is on. If
- not, when it is toggled on, the grid will be displayed in the newly
- selected color.
-
- Grid color selection may also be accomplished from the pop-out
- menu (see below).
-
- COLOR FLOOD: The work area may be flooded with a single solid color
- by double clicking on the desired color in the color palette display. The
- work area may also be flooded with a single solid color by selecting the
- desired color from the color palette display with the left mouse button
- and then depressing the F4 (function) key.
-
- ERASURE AND UPDATE: The Insert and Undo key system functions
- on the Zoomscreen in the same manner as it did on the paint screen.
-
- ABSOLUTE X-Y COORDINATES: The absolute X-Y coordinates of any zoomed
- pixel are shown with this function. By "absolute," SEURAT means the X and
- Y coordinates of the source pixel in the paint screen, not the position
- of the zoomed pixel on the Zoomscreen.
-
- To display the absolute coordinates, depress the F2 (function) key or
- select the appropriate option from the pop-out menu (see below). The
- mouse is converted to the brush crosshair cursor and the absolute
- coordinates of the zoomed pixel the cursor is positioned on are shown in
- the lower border of the view window where the coordinates of the upper-
- left-hand corner of the work area were formerly displayed.
-
- To cancel the function and restore the work area coordinate display,
- click with the right mouse key. No other operations are possible while
- displaying absolute coordinates.
-
- VIEWING THE PAINT SCREEN: A full-screen view of the paint screen may
- be obtained by clicking the right mouse key while the mouse is inside the
- borders of the view window. The user may also opt to view by depressing
- the F7 (function) key. To return to the Zoomscreen, key Esc or click the
- right mouse key. While the image is in the view mode, no mouse is
- visible.
-
- RETURNING TO THE PAINT MENU: Return to the paint menu screen by
- pressing Clr/Home, or by selecting Paint from the pop-out menu.
-
- ZOOMSCREEN POP-OUT MENU: The menu button is located in the upper-
- right-hand corner of the Zoomscreen. When the mouse enters the button, it
- converted to the normal GEM mouse. Click on the menu to call the pop-out
- menu. This menu functions identically with the pop-out menus on the paint
- menu screen. The Zoomscreen menu contains most of the options listed
- above.
-
- Additionally, it allows the user to erase the entire paint screen
- from within the Zoomscreen, to access the file function dialog box, to
- return to the paint menu screen, to access the palette editor, the
- transform and color map routines, to switch paint screens, and to quit.
-
- Originally, the Zoomscreen was the main procedure of SEURAT and the
- paint menu was an off-shoot. I have turned things around somewhat to
- conform to user's expectations of how a paint programs are usually
- structured, but in practice, the user may operate as quickly and
- efficiently out of the Zoomscreen as "home base" as out of the paint
- menu. I do.
-
- When the user changes the paint screen through the Zoomscreen (either
- by loading in a new image by means of the file function dialog or by
- calling the screen selection dialog), the new image is substituted for
- the existing one without exiting the Zoomscreen. That is, the new work
- area, with the same size and screen coordinates as the previously
- selected one, is displayed in the view window with its surrounding view
- area and zoomed.
-
- When returning to the Zoomscreen from the paint menu or from
- transforms or color map, the previously selected work area is updated
- with any changes that have been made since the user left the Zoomscreen.
- If the selected paint screen has been switched to another paint screen
- than the one last selected while the user was in the Zoomscreen, the
- newly selected paint screen is zoomed instead.
-
- The ability to switch paint screens without altering any parameters
- of the Zoomscreen allows the user to directly compare corresponding
- areas of differing versions of the same image stored in different paint
- screens, for example.
-
- ALTERNATE ZOOM MODE: The zoomed pixels may be displayed in two
- modes: one, as explained above, and the alternative mode, in which the
- zoomed pixels are printed to the screen in continuous contact with each
- other.
-
- Drawn objects may be loosely and not exclusively catagorized along an
- informal spectrum from geometric to naturalistic. Many of the color fills
- are examples of geometrically drawn graphic objects, and a digitalized
- photograph which consists of intensity contours is a good example of a
- naturalistic object.
-
- Naturalistically drawn objects are much more easily modified when the
- pixels are distinct and independent entities, as in SEURAT's normal zoom
- mode. Geometric objects are more impressive when the zoomed pixels are
- merged seamlessly.
-
- If the user holds down the Alt key while clicking on the "Z" box
- on the Zoomscreen view window to initiate a zoom, the resulting zoom
- will
- be performed in the merged-pixel mode. The grid toggle will be turned
- off,
- and no grid will be printed.
-
- The merged-pixel mode will remain in effect until the next time the
- "Z" box is clicked. That is, if the user leaves the Zoomscreen in the
- merged-pixel mode, and later returns to Zoomscreen, the zoom will be
- performed in the merged-pixel mode. However, this alternative zoom mode
- must be set again (by holding down the Alt key) whenever the "Z" box is
- to be clicked again.
-
- The user may switch between the two zoom modes at any time by
- clicking on the "Z" box (with or without the Alt key), whether or not a
- zoom is required by the program. (Also, a merged-pixel display can be
- converted to a normal-mode display, without changing the mode, by merely
- toggling the F1 key to cut the pixels.)
-
- ALTERNATE KEYSTROKE COMMANDS: Alternate keystroke commands are
- available for all of the functions listed on the pop-out menu. The
- following full list of keystroke commands are valid for use on the
- Zoomscreen:
-
- Esc = Set work screen
- Insert = Update restore
- Undo = Restore work area
- Clr/Home = Paint menu screen
- Up Arrow = Enlarge work area
- Down Arrow = Shrink work area
- f1 = Grid toggle on/off
- f2 = Abs. X-Y coordinates
- f3 = 20x20 mode toggle
- f4 = Flood with left mouse color
- f5 = Set color palette
- f6 = Set mouse factors for flicker and double click
- f7 = View image
- f9 = File functions
- Shift-f1 = Set grid color
- Shift-f4 = Screen transforms
- Shift-f5 = Erase screen
- Shift-f8 = Select screen
- Shift-f9 = Color map
-
- THE TWENTY-TWENTY MODE: When the user toggles the Zoomscreen into the
- 20x20 mode, the work area is reselected to the minimum size, 20 by 20
- pixels. Moreover, this work area is placed on the nearest pixel boundary
- that is modular with respect to its size, that is, with X and Y
- coordinates of 0,20,40,60,80... and so forth.
-
- While in the 20x20 mode, the directional arrows shift the work area
- by units of 20 in all directions, rather than by one pixel at a time.
- The coordinate display in the lower border of the view window is
- expressed in horizontal and vertical modules of 20 pixels (H=3 V=2 is the
- same as X=20 Y=10). The up arrow and down arrow cursor keys will not
- resize the work area.
-
- If the user returns to the set work screen in the 20x20 mode, the
- cursor is a 20/20 mouse, the work area selection box moves only in
- modular jumps of 20-pixel intervals aligned on horz. and vert. modular
- boundaries, etc.
-
- When the 20x20 mode is canceled by reselecting the toggle from the
- menu or keying F3 again, the work area remains the minimum 20-pixel size,
- but may be resized, moved, and altered from the view window or the set
- work screen as before. The work area coordinate display returns to X and
- Y coordinates, the arrows move the work area one pixel at a time, etc.
-
- You may have noticed that in the normal zoom mode there are some
- spaced-out grid lines that are printed in color O, whatever the grid
- color may be. They represent the X and Y coordinates of the paint screen
- that are modular to 20 pixels in height and width. An area enclosed by
- such grid lines is an area which can be selected as a whole in the 20x20
- mode.
-
- The 20x20 mode, used in conjunction with preplotted graph paper
- drawings, is the best method to take fullest advantage of the remarkable
- resolution offered by the Atari SM124 monochrome monitor. In any
- resolution, it offers the most precise method of transfering preplanned
- graphics to the screen.
-
- SCREEN TRANSFORMS
-
- The screen transform routines perform a variety of geometric
- transformations of entire paint screens.
-
- By geometric transformations, SEURAT refers to those manipulations of
- the image that can be performed with completely mutual one-to-one
- correspondance between the original and transformed pixel locations.
- That is, one and only one destination for each pixel to be moved, and one
- and only one pixel for each destination to which pixels are to be moved.
-
- Technically, this requirement is also true for some of the block
- manipulations such as skew, arc, and freeform. However, for a
- manipulation such as rotation or resize, such is not the case. An
- attempted one-to-one rotation procedure will leave the finished image
- full of "holes" where no pixel was placed and overwrites at locations
- where more than one pixel was placed, due to rounding and floating point
- errors, inaccuracies in the trancendential functions, and so on.
-
- These screen transformations are designed to commit no (or little)
- damage to the original pixels and their relationship with each other
- (whatever their orientation). (Precision requires every pixel it can
- get!)
-
- They are performed on whole screens (or as much of a screen as
- possible), but they may be utilized as a class of block manipulations by
- performing them on a copy of a paint screen and transfering portions of
- the "transformed" image back to the original paint screen as blocks. Or,
- a block may be "pasted" to an unused paint screen and be brought to
- transforms to be manipulated.
-
- The transforms may be used to manipulate or reorient whole screens
- in a quick and effective manner. These routines also include a set of
- symmetry functions that will create singly or multiply mirrored images.
-
- The functions and features of the transform routines are as
- follows:
-
- THE TRANSFORMS MENU: The transforms menu is a drop-down menu which
- is toggled on and off by the program as required and by the user as
- desired. A right mouse key click prints and unprints the menu. Moving the
- small crosshair cursor to the heading of either menu panel causes it to
- drop down. Unlike a conventional GEM menu, if the mouse leaves the menu
- panel without selecting, the menu panel will pop back up out of sight.
-
- A frame cursor follows the mouse cursor from item to item. An item is
- selected by a left mouse click. One menu item, the chain feature (see
- below), is toggled on and off by left mouse clicks. When CHAIN is
- highlighted, it is on.
-
- CHAIN: When chain is active, each transformation the user selects is
- performed on the outcome of the previous operation, if any. When chain is
- off, each operation is performed on the original screen with which the
- user entered the transforms routine. To abort a series of chained
- operations and begin a new sequence of chained operations, simply toggle
- chain off and on again.
-
- Chain functions somewhat differently when used with the two
- rotation operations. Consult the appropriate section below.
-
- TRANSFORMS CURSOR: Some transform operations utilize an additional
- cursor, the full-screen crosshair. They are: the four mirror operations
- and the two rotations. The function of this cursor is explained in each
- relevant section below.
-
- FLIP: Reverses the screen from left to right, a "mirror" image in
- the sense that it presents the way the original screen would look if
- viewed in a mirror.
-
- INVERT: Turns the screen upside-down. (Note: The combination, or
- chaining, of a flip and an invert constitutes a 180-degree rotation.)
-
- ROTATION 90° CLOCKWISE: This routine acts only on user-selected
- screen portions that constitute a square. The remainder of the image is
- erased before the operation is performed. The screen returned after the
- operation contains only the rotated screen portion. In that sense, the
- procedure is very much like the routines included on the block menu. But
- unlike the rotation algorithm used in the block rotation, this procedure
- meets the criteria for a truly geometric operation.
-
- However, the pixels on the ST monitors are approximately 10% higher
- than they are wide, thus distorting the final appearance of an uniform
- transformation. Therefore, an adjustment for pixel aspect ratio is
- included in the routine as the default condition, improving the result
- considerably for naturalistically drawn objects.
-
- However, this same adjustment distorts the regularity of geometric
- graphic objects. By holding down the Alt key while clicking on this
- option on the menu, the operation will be performed without any
- compensation for pixel aspect ratio.
-
- The full-screen crosshair cursor that appears after the user clicks
- on this option from the menu allows the selection of a square screen
- portion of any size up to the full height of the screen. Place the cursor
- on the upper-left-hand corner of the area to be selected and, depressing
- the left mouse key and holding it down, drag the box that will be printed
- to the screen to the size desired. When the left mouse key is released
- the operation will be performed.
-
- Since the rotation operation discards the portion of the screen not
- involved in the rotation, inclusion of a rotation in a sequence of
- chained operations necessarily voids that portion of the previous results
- that lies outside the selected screen area. Commencing a chain of
- operations with the rotation of a large screen area minimizes the area
- loss, but the user will find that the transform operations are quite as
- useful on small screen areas as on entire screens, if not more so.
-
- This operation is somewhat slow if it is performed on the largest
- possible area, but it's not irksome when performed on small or
- moderate-sized areas. Be patient; remember, this program's first criteria
- is accuracy and precision; speed comes second... OK, OK, a close second.
- Besides, I kind of like watching the square twirl around inside itself.
-
- ROTATION 90° ANTI-CLOCKWISE: This routine is absolutely identical
- with clockwise rotation in every regard except for the direction of the
- process. All commands and options are the same.
-
- (180-degree rotations can be accomplished by chaining a flip and
- an invert operation.)
-
- MIRROR OPERATIONS: The four mirror transforms produce a
- "reflection" of one screen area in another area of the screen. One may
- produce a screen in which the left-hand-side mirrors the portion of the
- image in the right-hand-side, or vice versa. Also, the top portion of a
- screen may be mirrored in the bottom, or vice versa.
-
- A single-line cursor is displayed, either a vertical or a horizontal
- line depending on the intersection of the reflection to be performed. The
- cursor should be placed where this intersection is desired and the left
- mouse clicked to perform the operation.
-
- If the user depresses the Esc key instead (regardless of the cursor
- placement), the operation will be performed with the horizontal or
- vertical mid-point of the screen as the axis of relection.
-
- SCROLLING OPERATIONS: These operations scroll the entire screen
- left, right, up or down, as selected by pressing one of the four cursor
- arrow keys. The screen is scrolled in the direction of the key pressed by
- the current scroll set factor (default is one pixel). The scroll
- functions are terminated by a right mouse click, which restores the menu.
-
- SET SCROLL STEP: The vertical scroll operations function very
- rapidly, the horizontal scrolls less so. This option allows the number of
- pixels by which the screen is shifted to be increased from the default of
- one pixel at a time. The maximum value is eight pixels.
-
- EXIT: The transform routine may be exited returning the current
- transformed screen ("New Image") or all operations performed may be
- aborted ("Old Image"), in which the original screen is returned
- unaltered.
-
- COLOR MAP
-
- The color map routine allows pixels of a given color number to be
- transformed into pixels of another color number. Up to the full number of
- colors available in a given resolution may be modified in a single pass.
-
- COLOR MAP DIALOG BOX: The color map dialog box displays two rows of
- color boxes containing each color of the palette connected in a
- one-to-one correspondence. (The color numbers are displayed in
- hexadecimal because of space restrictions.) When the user clicks with the
- left mouse key on any box in the upper, or source, row, the connecting
- bar will be unprinted.
-
- By clicking on any color box in the lower, or destination, row, the
- connecting bar will be redrawn to that box to show the color change
- sequence to be performed. The color box of the source row is redrawn in
- the destination color selected.
-
- This procedure may be repeated for any or all colors in the current
- palette before commencing the operation.
-
- The reset button cancels all selections and redraws the color map
- dialog box.
-
- Clicking on "Select Area" displays the paint screen and the full-
- screen crosshair cursor. Dragging with the left mouse key selects the
- area to be remapped. The operation is performed when the left mouse key
- is released.
-
- Clicking on the Whole Screen option causes the remapping to be
- performed on the entire paint screen.
-
- When the operation is complete the user is presented with an alert
- offering three options: to continue with another color-mapping operation
- ("Again"), to return the current result ("New"), or to abort the result
- and exit the procedure ("Old").
-
- Choosing the "Again" option preserves previously selected color
- mappings in force unless the reset button is clicked. Use with "Select
- Area" only, as "Whole Screen" would produce no further result.
-
-
- DISK INFORMATION
-
- For SEURAT to run, it must have the file SEURAT.DAT, which is
- normally present on the root directory of the disk from which the program
- is loaded. If the SEURAT.DAT is not present, an alert will give the user
- the option of changing disks and retrying to access the data file. The
- other option is to abort the program and return to the Desktop.
-
- PRINTING IMAGES: There is no specific hardcopy routine in SEURAT.
- Simply go to a view of the image which has no mouse on screen (the view
- modes) and press the Alt and Help keys together. The quality of the
- print-out will depend on the print driver you have installed. If your
- printer is not turned on or is not online, the program will hang up for
- 30 to 40 seconds, then resume. Don't panic and turn the ST off, OK?
-
- IMAGE CONVERSION AND COMPRESSION: SEURAT will not load compressed
- images, nor compress images for storage, nor will it convert from one
- picture format to another nor from one resolution to another (I had to
- leave out something!).
-
- There are a number of very good conversion and compression utilities
- in the public domain. Use them.
-
- ERROR MESSAGES
-
- SEURAT.PRG will terminate upon error, however, a GFA BASIC error
- message will be displayed first. It is almost certain to be "Not Enough
- Memory!"
-
- PROGRAMMING NOTES
-
- SEURAT is programmed in GFA BASIC, a product of GFA Systemtechnik,
- distributed in the U.S.A. by MichTron. I'd like to add: Thanks! A BASIC
- in which one can write a program of this length and complexity without
- horrendous results (even if I did fall asleep nights with rows of bombs
- dancing across the under-surface of my eyelids) is deserving of high
- praise indeed.
-
- RUNNING SEURAT UNDER THE GFA BASIC INTERPRETER: At the very
- beginning of the program, it is useful to to insert a line ("On Break
- Gosub End") immediately after the On Error statement (2nd line). At the
- very end of the program, change the last line in the Procedure End
- subroutine from "System" to "Edit."
-
- ODDS'N'ENDS
-
- SEURAT is dedicated to Georges Pierre Seurat (1859-1891), the
- Father of the Pixel. May their numbers increase!
-
- QUESTIONS AND ANSWERS: Are there any bugs in SEURAT? Yes, two
- Busy Bees and a Lady Bug, in the Fills.
-
- MORE QUESTIONS AND ANSWERS: What are those funny looking red
- bombs in the default color fill? Don't ask...
-
- LAST MINUTE HINTS: Don't click on paint functions "on the fly," that
- is, while rapidly scooting the mouse around (I'm guilty of this a lot
- myself). The paint menu screen is one long, long, long loop, and once in
- a while the mouse may be read after you've moved it out of the button
- box, thus selecting and highlighing the wrong function.
-
- Occasionally, you may also find that an extra right mouse click (or
- two or three or...) is required when returning from a complex series of
- operations, in order to switch from the paint menu screen to paint
- screen. This is caused by recursive nesting, and you have to back up out
- of the loops.
-
- ------------------------------------
-
- GEM is a Trademark of Digital Research, Inc.
- ATARI 1040ST, 520ST and Neochrome are Trademarks of
- the Atari Corp.
- DEGAS is a Trademark of Electronic Arts, Inc.
- GFA BASIC is a Trademark of GFA Systemtechnik.
- SEURAT is a Trademark of SKWare One, Inc.
-
-
-
-